package com.ly.heart.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ly.common.core.domain.BaseVo;
import lombok.Data;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 金蝶-库存状态对象 erp_king_base_inventory_status
 * @author cxl
 * @date 2024-07-22
 */
@TableName ("erp_king_base_inventory_status")
@ApiModel (value = "金蝶-库存状态", description = "金蝶-库存状态")
@Data
public class KingBaseInventoryStatusEntity extends BaseVo {

    /**
     * 主键id
     */
    @TableId (type = IdType.INPUT)
    private String id;

    /**
     * 库存状态编码
     */
    @ApiModelProperty ("库存状态编码")
    @TableField ("inventory_status_code")
    @Excel (name = "库存状态编码")
    private String inventoryStatusCode;

    /**
     * 库存状态名称
     */
    @ApiModelProperty ("库存状态名称")
    @TableField ("inventory_status_name")
    @Excel (name = "库存状态名称")
    private String inventoryStatusName;

    /**
     * 类型
     */
    @ApiModelProperty ("类型")
    @TableField ("type")
    @Excel (name = "类型")
    private String type;

    /**
     * 描述
     */
    @ApiModelProperty ("描述")
    @TableField ("desc_info")
    @Excel (name = "描述")
    private String descInfo;

    /**
     * 可使用
     */
    @ApiModelProperty ("可使用")
    @TableField ("is_use")
    @Excel (name = "可使用")
    private Boolean isUse;

    /**
     * 不可销售
     */
    @ApiModelProperty ("不可销售")
    @TableField ("is_disabled_sale")
    @Excel (name = "不可销售")
    private Boolean isDisabledSale;

    /**
     * 不可领用
     */
    @ApiModelProperty ("不可领用")
    @TableField ("is_disabled_apply")
    @Excel (name = "不可领用")
    private Boolean isDisabledApply;

    /**
     * 可锁库
     */
    @ApiModelProperty ("可锁库")
    @TableField ("is_inventory")
    @Excel (name = "可锁库")
    private Boolean isInventory;

    /**
     * mrp可用
     */
    @ApiModelProperty ("mrp可用")
    @TableField ("is_mrp")
    @Excel (name = "mrp可用")
    private Boolean isMrp;

    /**
     * 参与预警
     */
    @ApiModelProperty ("参与预警")
    @TableField ("is_warning")
    @Excel (name = "参与预警")
    private Boolean isWarning;

    /**
     * 创建组织
     */
    @ApiModelProperty ("创建组织")
    @TableField ("create_org")
    @Excel (name = "创建组织")
    private String createOrg;

    /**
     * 使用组织
     */
    @ApiModelProperty ("使用组织")
    @TableField ("use_org")
    @Excel (name = "使用组织")
    private String useOrg;

    @ApiModelProperty ("创建人")
    @TableField ("create_by")
    @Excel (name = "创建人")
    private String createBy;

    @ApiModelProperty ("创建时间")
    @TableField ("create_time")
    @JsonFormat (pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel (name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createTime;

    /**
     * 最后修改人
     */
    @ApiModelProperty ("最后修改人")
    @TableField ("last_update_by")
    @Excel (name = "最后修改人")
    private String lastUpdateBy;

    /**
     * 最后修改时间
     */
    @ApiModelProperty ("最后修改时间")
    @TableField ("last_update_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdateTime;

    /**
     * 审核人
     */
    @ApiModelProperty ("审核人")
    @TableField ("examine_by")
    @Excel (name = "审核人")
    private String examineBy;

    /**
     * 审核日期
     */
    @ApiModelProperty ("审核日期")
    @TableField ("examine_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "审核日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date examineTime;

    @ApiModelProperty ("审批状态")
    @TableField ("state")
    private String state;

    @ApiModelProperty ("流程实例id")
    @TableField ("instance_id")
    private String instanceId;

    /**
     * 禁用状态
     */
    @ApiModelProperty ("禁用状态,1:正常；2：禁用")
    @TableField ("is_disabled")
    @Excel (name = "禁用状态")
    private Integer isDisabled;

    @ApiModelProperty ("是否推送")
    @TableField ("is_send")
    private Integer isSend;

    /**
     * 禁用人
     */
    @ApiModelProperty ("禁用人")
    @TableField ("disabled_by")
    @Excel (name = "禁用人")
    private String disabledBy;

    /**
     * 禁用日期
     */
    @ApiModelProperty ("禁用日期")
    @TableField ("disabled_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "禁用日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date disabledTime;

    /**
     * 逻辑删除
     */
    @ApiModelProperty ("逻辑删除")
    @TableField ("is_used")
    @Excel (name = "逻辑删除")
    private Integer isUsed;

    @ApiModelProperty ("是否可被删除，1：可以被删除；2：不可用被删除，默认是1，一旦有单据使用该数据，则该值改为2")
    @TableField ("is_del")
    @Excel (name = "是否可用")
    private Integer isDel;


    @ApiModelProperty ("业务type")
    @TableField (exist = false)
    private String businessType;

    @ApiModelProperty ("流程模型id")
    @TableField (exist = false)
    private String modelId;

}
